home *** CD-ROM | disk | FTP | other *** search
- Bug reports concerning this port of c68 should be send to
- rossi@titan.rz.uni-osnabrueck.de (Thorsten Roskowetz).
- Don't bother Keith and Dave Walker with things that may be
- completely my fault! Thank you.
-
-
- c68/c386 Version 4.4
- ~~~~~~~~~~~~~~~~~~~~
-
- The following problems are known to be outstanding in c68/c386 at this
- release:
-
- All versions
- ~~~~~~~~~~~~
-
- Incorrect code is generated for:
-
- - The *=, /= and %= operators perform incorrect promotions when the LHS is
- an integral value and the RHS is a floating point value.
- Consider the case where i is an int and d is a double. The expression i *= d
- should be evaluated as if the expressions was i = (int)((double)i * d).
- However the current release evaluates this as i = i * (int)d;
-
- - Adjacent wide string literals are not concatinated.
-
- - Declarations of the form 'char (a[5]);' cause a bus error
-
-
-
- The following undefined behaviours are not detected:
-
- - An attempt is made to modify a string literal of either form.
-
- - An object is modified more than once, or is modified and accessed other
- than to determine the new value, between two sequence points.
-
- - The value of an uninitialized object that has automatic storage duration
- is used before a value is assigned.
-
-
-
- c68 v4.4.5 (TOS)
- ~~~~~~~~~~~~~~~~
-
- - with option -noopt, sometimes an "& operator on register variable"
- error is reported even if the variable is not declared with storage
- class specifier 'register'; looks like this is a common problem
- with all versions of c68 (Keith, can you confirm this?)
-